﻿#pragma once
#include "afxdialogex.h"
#include "Other.h"

class CFiltration : public CDialogEx
{
	DECLARE_DYNAMIC(CFiltration)

public:
	CFiltration(CWnd* pParent = nullptr);   // 标准构造函数
	virtual ~CFiltration();

// 对话框数据
#ifdef AFX_DESIGN_TIME
	enum { IDD = IDD_Filtration};
#endif
protected:
    BOOL OnInitDialog();
    virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV 支持

    DECLARE_MESSAGE_MAP()  
private:
    Other					Oth;			//其它常用函数
    CString                 AppPath;		//程序根目录
    CString                 ConfigPath;
    POINT   old;        //窗口位置坐标
    //勾选框 
    CString CheckTest;//勾选框 - 测试
    CString CheckLength;//勾选框 - 长度 
    CString CheckTop;//勾选框 - 开头
    CString CheckEnd;//勾选框 - 结尾
    CString CheckMustConTain;//勾选框 - 必须包含
    CString CheckCantContain;//勾选框 - 不能包含
    CString CheckRule;//勾选框 - 字符要求
    //单选框
    //输入框 
    CString m_strCodeTest;//输入框 - 条码测试
    CString m_strCodeMin;//输入框 - 最小长度
    CString m_strCodeMax;//输入框 - 最大长度
    CString m_strCodeTop;//输入框 - 开头
    CString m_strCodeEnd;//输入框 - 结尾
    CString m_strCodeMustConTain;//输入框 - 必须包含
    CString m_strCodeCantContain;//输入框 - 不能包含
    //CString m_strCodeRegExp;//输入框 - 正则表达式
    CString StrCodeTest;//测试条码框字符串
    //输入框
    //CEdit MsgEditCustomExp      ;//输入框 - 自定义
    CEdit MsgEditCodeTest;//输入框 - 测试
    CEdit MsgEditCodeMin;//输入框 - 最小长度
    CEdit MsgEditCodeMax;//输入框 - 最大长度
    CEdit MsgEditCodeTop;//输入框 - 开头
    CEdit MsgEditCodeEnd;//输入框 - 结尾
    CEdit MsgEditCodeMustConTain;//输入框 - 必须包含
    CEdit MsgEditCodeCantContain;//输入框 - 不能包含
    CEdit MsgEditCodeRegExp;//正则表达式 

    CFont StatiCresult; //测试条码
    BOOL Color_Blue;    //蓝色
    BOOL Color_Red;    //红色
    //CString CustomExp;      //自定义规则
    CString EditCodeMin;    //最小长度临时存放
    CString EditCodeMax;    //最大长度临时存放
    CString RegExp[8];
public:
    CString             ExpressInterface;       //接口参数
    bool                CheckFiltrationZto;
    CString             ZtoUrl;
    CString             ZtoUrl1;
    CString             ZtoAppId;
    CString             ZtoAppKey;
    //单个正则
    void OnEnChangeEditcodetest();
    void SaveGetIni();
    afx_msg void OnEnChangeEditcodemin();
    afx_msg void OnEnChangeEditcodetop();
    afx_msg void OnEnChangeEditcodemax();
    afx_msg void OnEnChangeEditcodeend();
    afx_msg void OnEnChangeEditmustcontain();
    afx_msg void OnEnChangeEditcantcontain();
    afx_msg void OnBnClickedRadiofigure();
    afx_msg void OnBnClickedRadioletter();
    afx_msg void OnBnClickedRadioall();
    afx_msg HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
    afx_msg void OnBnClickedChecklength();
    afx_msg void OnBnClickedChecktop();
    afx_msg void OnBnClickedCheckend();
    afx_msg void OnBnClickedCheckmustcontain();
    afx_msg void OnBnClickedCheckcantcontain();
    afx_msg void OnBnClickedCheckboxrule();
public:
    bool FilteringRule(string RegExp, CString DataStr);
    CString RegExpStr;      //整体正则 
    afx_msg void OnDestroy();
    afx_msg void OnBnClickedBtnsave();
    afx_msg void OnBnClickedFold0();
    afx_msg void OnSize(UINT nType, int cx, int cy);
    afx_msg void OnEnChangeNameFiltration1();
    afx_msg void OnEnChangeKeyFiltration1();
    afx_msg void OnEnChangeNameFiltration2();
    afx_msg void OnEnChangeNameFiltration3();
    afx_msg void OnEnChangeNameFiltration4();
    afx_msg void OnEnChangeNameFiltration5();
    afx_msg void OnEnChangeNameFiltration6();
    afx_msg void OnEnChangeNameFiltration7();
    afx_msg void OnEnChangeNameFiltration8();
    afx_msg void OnEnChangeNameFiltration9();
    afx_msg void OnEnChangeKeyFiltration2();
    afx_msg void OnEnChangeKeyFiltration3();
    afx_msg void OnEnChangeKeyFiltration4();
    afx_msg void OnEnChangeKeyFiltration5();
    afx_msg void OnEnChangeKeyFiltration6();
    afx_msg void OnEnChangeKeyFiltration7();
    afx_msg void OnEnChangeKeyFiltration8();
    afx_msg void OnEnChangeKeyFiltration9();
    afx_msg void OnBnClickedCheckFiltration1();
    afx_msg void OnBnClickedCheckFiltration2();
    afx_msg void OnBnClickedCheckFiltration3();
    afx_msg void OnBnClickedCheckFiltration4();
    afx_msg void OnBnClickedCheckFiltration5();
    afx_msg void OnBnClickedCheckFiltration6();
    afx_msg void OnBnClickedCheckFiltration7();
    afx_msg void OnBnClickedCheckFiltration8();
    afx_msg void OnBnClickedCheckFiltration9();
    afx_msg void OnEnChangeRegexpFiltration1();
    afx_msg void OnEnChangeRegexpFiltration2();
    afx_msg void OnEnChangeRegexpFiltration3();
    afx_msg void OnEnChangeRegexpFiltration4();
    afx_msg void OnEnChangeRegexpFiltration5();
    afx_msg void OnEnChangeRegexpFiltration6();
    afx_msg void OnEnChangeRegexpFiltration7();
    afx_msg void OnEnChangeRegexpFiltration8();
    afx_msg void OnEnChangeRegexpFiltration9();
    afx_msg void OnBnClickedCheckFiltrationauto2();
    afx_msg void OnEnChangeEditFiltrationappid2();
    afx_msg void OnEnChangeEditFiltrationkey2();
    afx_msg void OnEnChangeEditFiltrationurl2();
    afx_msg void OnEnChangeRegexpFiltration21();
    afx_msg void OnBnClickedCheckFiltration21();
    afx_msg void OnEnChangeNameFiltration21();
    afx_msg void OnEnChangeKeyFiltration21();
};
